﻿#Region "Imports Directive"

Imports System

#End Region

Namespace C4F.DevKit.Bluetooth

    Namespace FileTransferProfile

        ''' <summary>
        ''' EventArgs class to be used when an GetFolder operation 
        ''' completes.
        ''' </summary>
        Public Class GetFolderCompletedEventArgs
            Inherits ComponentModel.AsyncCompletedEventArgs

#Region "Private Members"

            ''' <summary>
            ''' The location of the folder on the remote device that is being 
            ''' pulled.
            ''' </summary>
            Private remFolderPath As String

            ''' <summary>
            ''' The location on local device where the pulled folder is 
            ''' to be stored.
            ''' </summary>
            Private locFolderPath As String

#End Region

#Region "Public Properties"
            ''' <summary>
            ''' The location on local device where the pulled folder is to be 
            ''' stored.
            ''' </summary>
            Public ReadOnly Property LocalFolderPath() As String

                Get
                    Return Me.locFolderPath
                End Get

            End Property

            ''' <summary>
            ''' The location of the folder on the remote device that is being 
            ''' pulled.
            ''' </summary>
            Public ReadOnly Property RemoteFolderPath() As String

                Get
                    Return Me.remFolderPath
                End Get

            End Property
#End Region

#Region "Constructor"

            ''' <summary>
            ''' Initializes the GetFolderCompletedEventArgs object.
            ''' </summary>            
            ''' <param name="remoteFolderPath">The location of the folder on the
            ''' remote device that is being pulled.</param>
            ''' <param name="localFolderPath">The location on local device where
            ''' the pulled folder is to be stored.</param>
            ''' <param name="error">An error that occurred during the 
            ''' asynchronous operation.</param>
            ''' <param name="cancelled">A value indicating whether the 
            ''' asynchronous operation was
            ''' cancelled.</param>
            ''' <param name="userState">The user-supplied state object 
            ''' supplied when the asynchronous operation was requested.</param>
            Public Sub New(ByVal remoteFolderPath As String, ByVal localFolderPath As String, _
                           ByVal [error] As Exception, ByVal cancelled As Boolean, ByVal userState As Object)

                MyBase.New([error], cancelled, userState)
                Me.locFolderPath = localFolderPath
                Me.remFolderPath = remoteFolderPath

            End Sub

#End Region

        End Class
    End Namespace
End Namespace
